package com.qinsoft.frame.utils;

import java.util.List;
import java.util.Map;

import org.apache.commons.lang.StringUtils;

/**
 * 判断工具类
 */
public class EmptyUtils {

	/**
	 * map对应的key值true
	 * 
	 * @param map
	 * @param key
	 * @return boolean
	 */
	public static boolean isEmptyMap(Map<?, ?> map, String key) {
		if (null == map)
			return true;
		if (!map.containsKey(key))
			return true;
		if (map.get(key) == null)
			return true;
		return false;
	}

	/**
	 * 字符串不为空返回true
	 * 
	 * @param str
	 * @return boolean
	 */
	public static boolean isNotEmpty(String str) {
		return !isEmpty(str);
	}

	/**
	 * 如果字符串为空返回
	 * 
	 * @param str
	 * @return boolean
	 */
	public static boolean isEmpty(String str) {
		return (str == null || "".equals(str));
	}
	/**
	 * 判断对象、String、Long、Integer 是否为空
	 * @param o
	 * @return boolean
	 */
	public static boolean isEmpty(Object o){
		if(o instanceof String){
			return (o == null || "".equals(o));
		}else if(o instanceof Object || o instanceof Long || o instanceof Integer){
			return o==null?true:false;
		}
		return false;
	}
	/*
	 * 如果字符串为空或空串返回
	 * 
	 * @param str
	 * 
	 * @return boolean
	 */
	public static boolean isBlank(String str) {
		return StringUtils.isBlank(str);
	}

	/**
	 * 如果List为空返回
	 * 
	 * @param str
	 * @return boolean
	 */
	public static boolean isEmptyList(List<?> result) {
		return (result == null || result.size() < 1);
	}
}
